// 导入 craco-alias 工具
const CracoAlias = require("craco-alias");
// 导入 craco-less
const CracoLessPlugin = require('craco-less');

module.exports = {
  plugins: [
    /* https://github.com/risenforces/craco-alias */
    {
      plugin: CracoAlias,
      options: {
        source: "tsconfig",
        tsConfigPath: "./tsconfig.extend.json",
      },
    },
    // less 插件
    {
      plugin: CracoLessPlugin,
			options: {
        lessLoaderOptions: {
          lessOptions: {
						//修改变量的意思
            modifyVars: { '@primary-color': '#31966c' },
            javascriptEnabled: true,
          },
        },
      },
    }
  ],

  // 开发服务器配置
	devServer: {
		// 激活代理服务器
		proxy: {
			// 将来以/dev-api开头的请求，就会被代理服务器转发到目标服务器去。
			"/dev": { // 需要转发的请求前缀
				target: "http://localhost:3002", // 目标服务器地址
				changeOrigin: true, // 为true时代理在转发时, 会将请求头的host改为target的值
				pathRewrite: { // 路径重写, 在转发请求时自动去除路径的/dev-api
					"^/dev": "",
				},
			},

      // 将来以/dev-api开头的请求，就会被代理服务器转发到目标服务器去。
			"/toutiao": { // 需要转发的请求前缀
				target: "https://www.toutiao.com", // 目标服务器地址
				changeOrigin: true, // 为true时代理在转发时, 会将请求头的host改为target的值
				pathRewrite: { // 路径重写, 在转发请求时自动去除路径的/dev-api
					"^/toutiao": "",
				},
			},
		},
	},
};
